Installation Documentation

Complete guide for installing and configuring the Beloma system

Welcome to Beloma

Beloma is a complete and robust solution developed to meet your needs. This documentation will guide you through the entire installation process, whether on a cPanel server or a dedicated VPS.

Quick Installation

Set up your system in minutes following our step-by-step guide.

Secure and Reliable

System developed with the best security practices in the market.

Dedicated Support

Support team ready to help with any questions or issues.

System License

To use the Beloma system, you need a valid license purchased through CodeCanyon. The license guarantees access to updates and technical support.

Get Your License

Download your official license through CodeCanyon to have full access to the system.

Download License on CodeCanyon
Important

Each license is valid for a single installation. For multiple installations, purchase additional licenses.

Server Dependencies

Before starting the installation, make sure your server meets the minimum requirements listed below. These requirements are essential for the system to work correctly.

General Requirements

cPanel Requirements

For installation on servers with cPanel, verify that the following resources are available:

Attention - Shared Hosting

Some shared hosting may have limitations. We recommend VPS or hosting with full Node.js support.

VPS Requirements

For VPS (Virtual Private Server) installation, you will have full control over the environment. We recommend the following specifications:

cPanel Installation

Follow the step-by-step guide below to install Beloma on your cPanel server:

Create MySQL Database

Access cPanel → MySQL Databases. Create a new database and a user with all privileges.

Tip

Write down the database name, username, and password. You will need this information for the .env file

Upload Files

Access cPanel File Manager and upload the system ZIP file to the desired folder (e.g., public_html/beloma or a subdomain).

Extract Files

Right-click on the ZIP file and select "Extract". Make sure all files were extracted correctly.

Configure Node.js

Access cPanel → Setup Node.js App. Create a new application with the following settings:

# Node.js Application Settings
Node.js version: 20.x (or the latest available)
Application mode: Production
Application root: /home/username/public_html/beloma
Application URL: yourdomain.com
Application startup file: server.js

Configure Environment Variables

Rename the .env.example file to .env and configure the variables:

# Database Settings
DB_HOST=localhost
DB_USER=your_mysql_user
DB_PASS=your_mysql_password
DB_NAME=database_name

# Application Settings
NODE_ENV=production
APP_URL=https://yourdomain.com
PORT=3000

# Session Key (generate a random key)
SESSION_SECRET=your_secret_key_here

Install Dependencies

Access cPanel SSH Terminal or use the "Run NPM Install" button in Node.js Selector:

# Via SSH
cd ~/public_html/beloma
npm install --production

Run Migrations

Run database migrations to create the necessary tables:

npm run migrate

Start the Application

In Node.js Selector, click "Start App" or via SSH:

npm start
# Or using PM2 to keep it running
pm2 start ecosystem.config.js

Configure SSL

Access cPanel → SSL/TLS or Let's Encrypt and install an SSL certificate for your domain. SSL is required for the WhatsApp API to work correctly.

Access the System

Access your domain in the browser (https://yourdomain.com) and log in with the default credentials. Change the password immediately after the first login.

Security

Change the default credentials immediately after installation. Never share your .env file!

VPS Installation

Follow the step-by-step guide below to install Beloma on your VPS with Ubuntu/Debian:

Update the System

Connect to your VPS via SSH and update system packages:

sudo apt update && sudo apt upgrade -y

Install Node.js

Install Node.js using NodeSource:

# Add NodeSource repository
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -

# Install Node.js
sudo apt install -y nodejs

# Verify installation
node --version
npm --version

Install MySQL

Install and configure MySQL Server:

# Install MySQL
sudo apt install -y mysql-server

# Configure MySQL security
sudo mysql_secure_installation

# Access MySQL and create database
sudo mysql -u root -p

# Inside MySQL:
CREATE DATABASE beloma_db;
CREATE USER 'beloma_user'@'localhost' IDENTIFIED BY 'your_strong_password';
GRANT ALL PRIVILEGES ON beloma_db.* TO 'beloma_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Install Nginx

Install Nginx as web server and reverse proxy:

sudo apt install -y nginx
sudo systemctl enable nginx
sudo systemctl start nginx

Install PM2

Install PM2 globally to manage the application:

sudo npm install -g pm2

Create Directory and Upload

Create the application directory and upload the files:

# Create directory
sudo mkdir -p /var/www/beloma
sudo chown -R $USER:$USER /var/www/beloma

# Upload via SCP (from your computer)
scp -r ./beloma/* user@your_ip:/var/www/beloma/

# Or clone via Git (if available)
cd /var/www/beloma
git clone your_repository .

Configure Environment Variables

Configure the .env file:

cd /var/www/beloma
cp .env.example .env
nano .env

# Configure the variables:
DB_HOST=localhost
DB_USER=beloma_user
DB_PASS=your_strong_password
DB_NAME=beloma_db
NODE_ENV=production
APP_URL=https://yourdomain.com
PORT=3000
SESSION_SECRET=generate_a_random_key_here

Install Dependencies and Migrate

Install dependencies and run migrations:

cd /var/www/beloma
npm install --production
npm run migrate

Configure Nginx

Create the Nginx configuration for reverse proxy:

sudo nano /etc/nginx/sites-available/beloma

# Paste the configuration:
server {
    listen 80;
    server_name yourdomain.com www.yourdomain.com;

    location / {
        proxy_pass http://localhost:3000;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection 'upgrade';
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_cache_bypass $http_upgrade;
    }
}

# Enable the site
sudo ln -s /etc/nginx/sites-available/beloma /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx

Install SSL with Certbot

Install free SSL certificate with Let's Encrypt:

sudo apt install -y certbot python3-certbot-nginx
sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com

# Configure automatic renewal
sudo certbot renew --dry-run

Start with PM2

Start the application with PM2 and configure to start automatically:

cd /var/www/beloma
pm2 start ecosystem.config.js

# Save PM2 configuration
pm2 save

# Configure to start on boot
pm2 startup

# Check status
pm2 status
pm2 logs

Configure Firewall

Configure the firewall to allow only necessary ports:

sudo ufw allow 22
sudo ufw allow 80
sudo ufw allow 443
sudo ufw enable
sudo ufw status
Useful PM2 Commands

pm2 restart all - Restart application | pm2 logs - View logs | pm2 monit - Real-time monitor

Technical Support

Our support team is ready to help you with any questions or issues related to the installation and use of the Beloma system.

Need Help?

Contact our technical support team. We will respond as quickly as possible!

nakitentudo@gmail.com

Business Hours

Monday to Friday, 9am to 6pm (GMT-3)

Response Time

We respond within 24 business hours

Documentation

Check this documentation before contacting us

Before Contacting Us

Make sure you have a valid license and provide details about the issue, including error messages and logs.

Frequently Asked Questions (FAQ)

Can I install on shared hosting?

It depends on the hosting. Node.js support and SSH access are required. We recommend VPS for better performance and control.

Is SSL required?

Yes, SSL certificate is required for the WhatsApp API to work correctly and for data security.

How do I update the system?

Backup the database and files, replace the files with the new version, run npm install and npm run migrate.

Which VPS do you recommend?

We recommend providers like DigitalOcean, Vultr, Linode, or Contabo. Choose a plan with at least 2GB of RAM.

Is the license lifetime?

Yes, the license purchased on CodeCanyon is lifetime for the purchased version. Future updates may require support renewal.